﻿using System;

namespace InDepth2Demo.Chapter4
{
    internal class ValueTypeCompare
    {
        public static void Call()
        {
            char x1 = 'a';
            char x2 = 'C';
            Console.WriteLine(x1.CompareTo(x2));
        }

        //char 比较的源码
        //public int CompareTo(char value)
        //{
        //    return this - value;
        //}

        public static void Call2()
        {
            int? x = new int?();
            Console.WriteLine("x 是在堆中还是在栈中：");
            // 首先 x 作为局部变量，是会存储在栈上的。
            // 其次，int? 表示一个int的可空类型（Nullable<int>），它是值类型的一个包装。当创建它的实例时，实际上是在创建一个值类型（struct），而不是引用类型。
            // (注：如果它是作为类的字段或数组的元素存储的，那么它将存储在堆上，作为该对象或数组的一部分。)
        }


    }
}
